﻿#define  _CRT_SECURE_NO_WARNINGS  1
#include <stdio.h>
//#include <math.h>
//int main()
//{
//	double r = sqrt(16.0);
//	printf("%.2lf", r);
//	return 0;
//}

//写一个加法函数，完成2个整型变量的加法操作。
//int Add(int x, int y)
//{
//	return x + y;
//}
//int main()
//{
//	int a = 0;
//	int b = 0;
//	printf("请输入两个加数\n");
//	scanf("%d %d", &a, &b);
//	int c = Add(a, b);
//	printf("%d", c);
//	return 0;
//}

// return后边也可以什么都没有，直接写 return; 这种写法适合函数返回类型是void的情况。
//void print(int n)
//{
//	if (n < 10)
//		return 0;
//	printf("hehe\n");
//}
//int main()
//{
//	//print(10);
//	print(-2);
//	return 0;
//}


// return返回的值和函数返回类型不⼀致，系统会⾃动将返回的值隐式转换为函数的返回类型。
//int test()
//{
//	return 6.0;
//}
//int main()
//{
//	int r=test();
//	printf("%d\n", r);
//	return 0;
//}

//如果函数中存在if等分⽀的语句，则要保证每种情况下都有return返回，否则会出现编译错误
//这个代码是错误的
//int test(int n)
//{
//	if (n < 0)
//		return 0;
//}
//int main()
//{
//	int r = test(10);
//	printf("%d\n",r);
//	return 0;
//}

//int test(int n)
//{
//	if (n < 0)
//		return 0;
//	else
//		return 1;
//}
//int main()
//{
//	int r = test(10);
//	printf("%d\n",r);
//	return 0;
//}

//函数的返回类型如果不写的话，编译器会默认他返回的是int类型
//test()
//{
//	return 1;
//}
//int main()
//{
//
//	return 0;
//}

//如果一个函数有明确的返回类型，但是函数内部没有return返回值，最终到底返回什么值，是不确定的！！
//int test()
//{
//	printf("hehe\n");
//
//}
//int main()
//{
//	printf("%d\n",test());
//	return 0;
//}




//写一个函数将一个整型数组的内容，全部置为-1，再写一个函数打印数组的内容。
//void set_arr(int arr[],int sz)
//{
//	int i = 0;
//	for (i = 0; i < sz; i++)
//	{
//		arr[i] = -1;
//	}
//}
//void print_arr(int arr[], int sz)
//{
//	int j = 0;
//	for (j = 0; j < sz; j++)
//	{
//		printf("%d ", arr[j]);
//	}
//	printf("\n");
//}
//int main()
//{
//	int arr[10] = { 0 };
//	int sz = sizeof(arr) / sizeof(arr[0]);
//	print_arr(arr, sz);
//	set_arr(arr,sz);
//	print_arr(arr, sz);
//	return 0;
//}